package com.skyd.core.android;

import android.app.Activity;
import android.os.Debug;
import android.view.Window;
import android.view.WindowManager;

public class BaseActivity extends Activity {
	
	/**
	 * 将画面设为全屏，隐藏状态栏和标题栏。需在onCreate方法中的setContentView之前执行。
	 */
	public void setFullScreen(){
		/** 全屏设置，隐藏窗口所有装饰 */
		getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
				WindowManager.LayoutParams.FLAG_FULLSCREEN);
		/** 标题是属于View的，所以窗口所有的修饰部分被隐藏后标题依然有效 */
		requestWindowFeature(Window.FEATURE_NO_TITLE);
	}
	
	/**
	 * 将程序设为禁止屏幕休眠。需在onCreate方法中的setContentView之前执行。
	 */
	public void setNoSleep(){
		getWindow().setFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON,
				WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
	}

	@Override
	protected void onPause() {
		super.onPause();
		if(_IsTraceEnable)Debug.stopMethodTracing();
	}

	@Override
	protected void onResume() {
		super.onResume();
		if(_IsTraceEnable)Debug.startMethodTracing("debug");
	}

	/**
	 * 初始值为false。 功能注释：指示是否开启追踪功能（调试用途，需要声明SD卡写入权限）
	 */
	private boolean _IsTraceEnable = false;

	/**
	 * 获取IsTraceEnable。 功能注释：指示是否开启追踪功能（调试用途，需要声明SD卡写入权限）
	 * 
	 * @return 当前的boolean类型的值
	 */
	public boolean getIsTraceEnable() {
		return _IsTraceEnable;
	}

	/**
	 * 设置IsTraceEnable。 功能注释：指示是否开启追踪功能（调试用途，需要声明SD卡写入权限）
	 * 
	 * @param value
	 *            要设置的boolean类型值
	 */
	public void setIsTraceEnable(boolean value) {
		_IsTraceEnable = value;
	}

	/**
	 * 设置IsTraceEnable为其默认值(false)。 功能注释：指示是否开启追踪功能（调试用途，需要声明SD卡写入权限）
	 */
	public void setIsTraceEnableToDefault() {
		setIsTraceEnable(false);
	}
}
